Customizing content based on social network information

ABSTRACT

Systems and methods are disclosed that use social networking profiles of users to generate personalized content of display pages. The personalized content may be generated using profile data retrieved via an application program interface of a social networking system, and may be presented on the display pages of a distinct system, such as a site that hosts an electronic catalog of items. The personalized content may include features that allow a user to indicate a like or preference for an item and that can be customized based on, e.g., the extent of the user&#39;s social network or the influence the user has over other potential users of the catalog system. Systems and methods are also disclosed that use the social networking profiles to generate personalized messages that can be posted to social network contacts of the user to provide information about items for which the contacts may be interested.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/723,076, filed Dec. 20, 2012, entitled “METHOD, MEDIUM, AND SYSTEMFOR CUSTOMIZING CONTENT BASED ON SOCIAL NETWORK INFORMATION,” which is acontinuation of U.S. patent application Ser. No. 12/871,733, filed Aug.30, 2010, entitled “METHOD, MEDIUM, AND SYSTEM FOR ADJUSTING ASELECTABLE ELEMENT BASED ON SOCIAL NETWORKING USAGE,” now U.S. Pat. No.8,355,955; each of the foregoing is hereby incorporated by referenceherein in its entirety.

BACKGROUND

Customers of e-commerce sites, such as online web sites of merchants,can be presented with display pages (e.g., web pages) that describeproducts or services that are available from the e-commerce site. Insome cases, the e-commerce site may use information about the customer'sshopping preferences, purchase history, product viewing history and soforth to personalize the content or appearance of a display page (e.g.,a home page, detail page, or search results page) that is presented tothe user (e.g., via a web browser or other type of user interface).

It is becoming increasingly common for customers of e-commerce sites toalso be members of a social networking site, which maintains profileinformation for the members of the site. Member profile information caninclude information about social connections between the member andother persons, organizations, and entities (e.g., the member's socialnetwork). The member profile information may also include informationabout preferences of the member (e.g., likes or dislikes) for media(e.g., movies, music, or video games), products, services, activities,etc. Very little integration currently exists between existinge-commerce sites and social networking sites.

BRIEF DESCRIPTION OF THE DRAWINGS

Throughout the drawings, reference numbers may be re-used to indicatecorrespondence between referenced elements. The drawings are provided toillustrate example embodiments described herein and are not intended tolimit the scope of the disclosure.

FIG. 1 schematically illustrates an embodiment of an electronic catalogsystem that generates personalized content, including display pages,using profile information received from a social networking system. Theelectronic catalog system can also communicate messages to the socialnetworking system based on the profile information.

FIG. 2A illustrates an example format of a web page that may begenerated by the electronic catalog system to provide a userfunctionality to indicate the user “likes” an item (e.g., by clicking a“Like” button).

FIG. 2B illustrates an example format of a login or sign-in page thatmay be used to allow a customer to connect the customer's account on theelectronic catalog system with the customer's account on the socialnetworking system.

FIGS. 2C to 2E illustrate examples of popovers that may be displayed onthe web page of FIG. 2A during the process in which the customer grantspermission to the electronic catalog system to connect to the socialnetworking system.

FIGS. 2F and 2G illustrate examples of popovers that may be displayed onthe web page of FIG. 2A when a customer with a catalog system accountthat is connected to a social networking system account clicks the“Like” button of FIG. 2A.

FIGS. 3A to 3C illustrate example formats of web pages that may begenerated by the electronic catalog site to personalize the content andappearance of the web page based at least in part on the customer'susage of the social networking site (see also, FIG. 2A). The amount ofcontent, the positioning, the appearance, and the size of the “Like”area change from FIG. 2A through FIG. 3C.

FIGS. 4A and 4B illustrate example formats of web pages that may begenerated by the social networking site for a member when the member isalso connected to the electronic catalog site. FIG. 4A is an exampleformat of a “wall” that allows the member and the member's friends orcontacts to post content such as comments, photos, videos, etc. FIG. 4Bis an example format of a “news feed” that presents the most recent orrelevant messages and postings for the member.

FIG. 5 illustrates an embodiment of a process for customizing content(e.g., for display pages) based on social networking profileinformation.

FIG. 6 illustrates an embodiment of a process for customizing messagesbased on social networking profile information.

DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS

E-commerce systems and social networking systems typically have beenseparate systems that have not shared customer information and userprofile information. It may be advantageous if an e-commerce system canuse, with the permission of a customer, the customer's profileinformation from the social networking site in order to provide a morepersonalized experience when the customer visits the e-commerce system.It may also be advantageous if the e-commerce system can use, withcustomer permission, the customer's profile information to determineinformation about products and services that may be of interest to thecustomer and/or others in the customer's social network. For example,the e-commerce system can communicate messages about such products andservices to the wall or news feed of the customer and/or others in thecustomer's social network. Personalized display page content and/ormessaging have the potential to increase traffic to a display page foran item or to generate additional purchases of the item from thee-commerce system, because the e-commerce system or its customers cancommunicate information about items that may be of interest to theirsocial network contacts. Also, personalized display pages and messagingcan provide links to detail pages for such items, which can make it easyfor social networking contacts to visit and purchase from the e-commercesystem.

Accordingly, various computer-implemented features are disclosed forintegrating an electronic catalog system, such as a system that hosts ane-commerce site, with a social networking system. In some embodiments,systems and methods use profile data retrieved from the socialnetworking system to automatically personalize the content or appearanceof a display page or to automatically determine interactions (e.g.,messaging) between an e-commerce system and the social networkingsystem. These features may be embodied individually or in anycombination in a web site system or other type of interactive systemthat provides access to an electronic catalog or other repository ofitems. For example, the disclosed features may be implemented by ashopping system so that when a customer visits the shopping system, thecustomer is presented with display pages (e.g., web pages) that arepersonalized or customized based on, for example, the customer's usageof the social networking system. Additionally or alternatively, theshopping system may use profile information obtained from the socialnetworking system to determine, for example, the content or timing ofmarketing or informational messages communicated from the shoppingsystem to users of the social networking system who may be current orpotential customers of the shopping system.

I. Example System (FIG. 1)

FIG. 1 schematically illustrates one embodiment of an electronic catalogsystem 30 that implements the above and other features. The electroniccatalog system may be implemented as a computerized system thatcomprises multiple programmed computing devices (e.g., web servermachines, application servers, storage servers, load balancers, etc.)that communicate over one or more networks. The electronic catalogsystem 30 hosts a web site that provides functionality for users tobrowse an electronic catalog of items that are available for purchase.The Amazon.com web site is one example of such a site. The itemsrepresented in the catalog may include, for example, physical products,music downloads, video downloads, software applications, magazinesubscriptions, mobile service plans, and other types of items that canbe purchased. Although described in the context of a web site, theinventive features described herein can also be implemented in othertypes of interactive systems, including interactive television systems.Further, although described in the context of products that areavailable for purchase, the disclosed features are also applicable toother types of items, including services, news articles, blogs, websites, and television shows.

As illustrated in FIG. 1, the electronic catalog system 30 includes oneor more web servers 32 that respond to page requests received over theinternet from user computing devices 34 (e.g., personal computers,portable computing devices, mobile phones, electronic book readers,PDAs, etc.) of end users. The system 30 also includes a repository ofcatalog content 36. The catalog content may include, for example,product images, product descriptions, user ratings and reviews ofparticular products, price and availability data, seller data, etc. Asearch engine (not shown) enables users to search the catalog bysubmitting free-form search strings.

The catalog system 30 also includes a repository 38 of customer accountdata for users who have created accounts with the system (“customers”).Customer account data may include, for example, usernames, passwords,payment information, shipping information, item ratings, and wish lists.The repository 38 may also include various types of collected behavioraldata reflective of the customer's browsing activity. The behavioral datamay include item selection data for items selected by users of thecatalog system. For example, the item selection data may includepurchase histories, search histories, and item detail page viewinghistories. Purchase histories can include purchases or rentals of itemsfor physical delivery or electronic download (e.g., music or videodownloads). As will be discussed further below, the item selection datacan also include likes and preferences of the customer for items,authors, artists, directors, genres, etc. For example, the itemselection data may include information on whether the customer (or thosein the customer's social network) has indicated a “like” for an item.

As shown in FIG. 1, the electronic catalog system 30 also includes apersonalization service 40 that generates personalized or customizedcontent, including personalized display pages, for users of the system30. The personalization service 40 may also provide for customizedprogrammatic interaction between the electronic catalog system 30 and asocial networking system 50. For example, the personalization service 40may generate personalized messages for the social networking system 50to distribute to certain members of the social networking system. Thepersonalization service 40 may use social networking profile dataretrieved from an external social networking system 50 to provide thepersonalization or customization of display pages or messaging (asdescribed below).

The personalization service 40 includes one or more display pagecustomization engines 42 for customizing or personalizing the appearanceor content of a display page presented to a customer of the system 30.For example, a display page can include a web page that is displayed bya web browser (or other user interface) when a customer visits the website hosted by the electronic catalog system 30. Such customized orpersonalized display pages can include a home or login page (when thecustomer first accesses the website), detail pages for specific items inthe electronic catalog, search pages that allow users to search fordesired items or services, or recommendation pages that are generated inresponse to a user's request for recommendations. Display pages can alsoinclude popup pages, popovers, hover pages, and so forth that arepresented when a user views a web page. Examples of display pages arediscussed with reference to FIGS. 2A-2F and 3A-3C. The personalizationservice 40 can include one or more messaging engines 43 for generatingpersonalized messages for the social networking system 50 to distributeto certain members of the social networking system 50. Although theembodiment of the catalog system 30 illustrated in FIG. 1 includes bothpage customization engines 42 and messaging engines 43, otherembodiments of the system 30 may include page customization engines 42(but not messaging engines 43) or may include messaging engines 43 (butnot page customization engines 42). Further, in other embodiments, thesystem 30 can be configured differently than shown in FIG. 1. Forexample, the page customization engines 42 and/or the messaging engines43 may be separate components and not included in a personalizationservice 40. Many variations and alternatives are possible, and no singlecomponent or group of components is essential or required to be presentin every embodiment of the system 30.

As explained below, the personalization service 40 may be invoked in avariety of different contexts to provide personalized display pages tousers of the electronic catalog system 30 or to provide personalizedmessages to users of the social networking system 50.

The electronic catalog system 30 may associate with each customer of thesystem 30 a unique customer identifier, token, or key (e.g., a “customerID”). The customer ID is used by the system 30 to access the customeraccount data from the repository 38. To protect the privacy ofcustomers, the customer ID does not include any information that wouldallow the customer to be personally identified from the customer ID.

The electronic catalog system 30 may also include functionality andcomponents (not shown) for enabling users to perform various other typesof functions, including but not limited to the following: (a) purchasingitems selected from the electronic catalog, (b) creating wish lists ofitems selected from the catalog, and searching for and viewing the wishlists of other users, (c) conducting keyword searches for specificcatalog items, (d) browsing the catalog using a category-based browsetree, (e) creating personal profiles that are viewable by other users,(f) posting items for sale in the electronic catalog, (g) taggingspecific catalog items, and (h) posting customer reviews and ratings ofparticular catalog items.

As further depicted in FIG. 1, the electronic catalog system 30 alsoincludes a social network interface 46 that is capable of communicating(over the Internet and/or another data network) with an external socialnetworking system 50. The social networking system 50 hosts a socialnetworking web site that provides functionality for users to set upsocial networking accounts (to become “members”), and to establishcontact or “friend” relationships with other members. Examples of suchsocial networking systems and web sites include Facebook™, MySpace™,Mixi™, and LinkedIn™. To establish a contact or “friend” relationshipvia such a system, one member typically initiates the transmission of aninvitation (also sometimes referred to as a “friend request” or“connection request”) to another member by interacting with the socialnetworking system 50. If the receiving member accepts this invitation(such as by clicking on an acceptance button or link), the socialnetworking system 50 creates a database record or entry indicating thatthe two users are contacts of each other.

The social networking system 50 may be operated independently of (and bya different entity than) the electronic catalog system 30, and the twosites may operate in different Internet domains and on differenthardware platforms. In other embodiments, the social networking system50 may be an integral part of the electronic catalog system 30. Althougha single social networking system 50 is shown in FIG. 1, the electroniccatalog system 30 may interact with additional social networking systemsin the same manner as described herein.

The social networking system 50 can include one or more web servers 54that respond to page requests from user computing devices 34 bygenerating and serving display pages (e.g., web pages). These web pagesprovide functionality for users to create private and public socialnetworking profiles to share personal information with their contactsand others. Each such member profile, which may be maintained in anappropriate data repository 56, typically includes multiple fields orsections, some of which relate to the user's interests or preferences.For example, text fields may be provided for entering the followinginformation: name, birthday, hometown, favorite activities, favoritemusic, favorite books, favorite movies, favorite video games, favoriteweb sites, favorite clubs, favorite restaurants, favorite mobileapplications. These fields are merely representative of the types ofprofile fields that may be provided.

The member profile information may also include other content (orinformation about such content) associated with the member such as,e.g., connections to other members, media (photos, videos, etc.), mediaor product reviews, fan pages, groups, hobbies, applications or games,status messages, postings by members, events, and so forth. Content inthe member profile can be connected to other content in the member'sprofile by establishing one or more relationship connections betweenthem. For example, if two members are in the same social network, themember profile information of each of these two members can indicatetheir relationship connection to be “friends.” If a member indicates apreference for a particular item or object (e.g., a movie, a book, aphoto), the item or object can be included in the member profile and therelationship connection between the member and the item may be anindication that the member “likes” the item. For example, as will bedescribed below, a customer of the catalog system 30 can click a “like”button on a detail page for an item available from the catalog system toindicate the customer's preference for the item. The catalog system 30can communicate this “like” to the social networking system 50, whichcan update the customer's member profile to include information aboutthe item and the customer's preference for the item as well as publishthe customer's preference for this item on the news feeds of thecustomer's social networking contacts.

The foregoing are merely examples of the types of content and the typesof relationship connections that can be included in the member profileinformation. The content and relationship connections of the memberprofile may be organized as a “social graph” in some implementations ofthe system 50 (for example, the Facebook™ Social Graph). Member profileinformation can be stored in and retrieved from the data repository 56.

The social networking system 50 can provide functionality for a memberto post a comment to, or indicate a preference the member shares with,other members in their common social network (e.g., the two users are“friends” on the social networking system). For example, a member maypost a comment or indicate a preference on a friend's “wall” on thesocial networking system. Other users of the social networking systemwho are “friends” of these members can view (and comment on) postings tothese walls. The social networking system 50 may provide functionalityfor communicating messages to members. The messages may come from thesocial networking system itself, other members, or other organizationsor entities. Some social networking systems organize messages andpostings into an individualized “news feed” that presents to each memberthe most recent or relevant messages and postings.

The social networking system 50 typically associates with each member ofthe system a unique membership identifier, token, or key (e.g., a“member ID”). To protect the privacy of members of the social networkingsystem 50, the member ID typically does not include any information thatwould allow the member to be personally identified from the member ID.The member ID is used by the system 50 to access the member profileinformation and to organize and distribute appropriate content toindividual members (e.g., to distribute content to a member's wall ornews feed). To refer to members of a social network, the member profiletypically uses member IDs (rather than personally identifiableinformation).

In the example shown in FIG. 1, the social networking system 50 includesa service interface 58, including an API (Application ProgrammingInterface) 60, which enables external systems to retrieve member profileinformation and to post information to members' profiles. The electroniccatalog system 30 uses this interface 58 to retrieve social networkingprofile information of particular members of the social networkingsystem. For example, the system's social network interface 46 makes APIcalls to the social networking system 50 to request the socialnetworking data of particular members of the social networking system.

When a customer gives permission to link the customer's catalog account(e.g., their account with the electronic catalog system 30) with thecustomer's social networking account, the social network interface 46can make API calls that include the customer's social network log-incredentials (e.g., username and password), as supplied to the system 30by the customer. The electronic catalog system 30 can then retrieve thecustomer's member profile information and member ID from the socialnetworking system 50. Because the electronic catalog system 30 knows thecustomer's customer ID, the catalog system can make an association ormapping between the customer ID (on the catalog system 30) and themember ID (on the social networking system 50). The catalog system 30can include a database 44 that includes such mappings or associationsbetween customer IDs and member IDs for all customer's who have giventhe catalog system 30 permission to link their respective catalog andsocial networking accounts.

The personalization service 40 can use the customer ID-to-member IDmappings in a variety of ways. As discussed above, the member profilesretrieved from the social networking system 50 typically include memberIDs (rather than personally identifiable information). The catalogsystem 30 can use the customer ID-to-member ID mappings to determinewhich, if any, of the member IDs referred to in member profile data arealso customers of the catalog system 30 (e.g., have a customer IDassociated with the member ID). If the catalog system 30 desires totarget messages to particular customers who also have accounts on thesocial networking system, the catalog system 30 can determine thecustomers' member IDs on the social networking system from the mappingsin database 44. The catalog system 30 can also determine which customershave social networking accounts by determining if there is a member IDassociated with a given customer ID. Therefore, the catalog system 30can use the database 44 to determine customer ID from member ID or todetermine member ID from customer ID.

The electronic catalog system 30, and particularly the personalizationservice 40, can use the retrieved social networking profile informationto provide customized content or appearance of display pages to thecustomer of the catalog system 30. Profile data retrieved from thesocial networking system 50 may be stored in a cache 48 to reduce theneed for data retrieval requests, or may be persistently stored by theelectronic catalog system. The electronic catalog system 30 may also usethe social networking system's interface 58 to post information (e.g.,personalized messages) to the social networking profiles of particularmembers. For example, the catalog system 30 may determine that if aparticular customer buys an item, then the customer's social networkingfriends may also be potential customers for the item. The messagingengine 43 of the catalog system 30 may communicate a message about theitem to the service interface 58 for posting on the walls or news feedsof the customer's social networking friends (e.g., using member IDsobtained from the customer's member profile). In some implementations ofthe social networking system 60, the message that is presented to amember may include a photo of the product or a hyperlink that allows themember to view or access a display page for the item from the catalogsystem 30 (e.g. by clicking on the photo or hyperlink).

The various components shown in FIG. 1 may be implemented in anappropriate combination of hardware and software. For example, the webservers 32 and 54 may be implemented using physical servers (withprocessors, memory, etc.) that are programmed with executable programcode to respond to display page requests by generating and returning webpages. The personalization service 40, social network interface 46 andservice interface 58 may similarly be implemented using programmedphysical servers or general purpose computers.

II. Example Display Pages (FIGS. 2A-4B)

A. Like Button

FIGS. 2A to 2G and 3A to 3C illustrate examples of the format andcontent of representative display pages (e.g., web pages) that may begenerated by the electronic catalog system 30 to provide a personalized“Like” button 130 for users of the system 30. The representative displaypages are presented as they may appear, for example, in a web browser.The web pages may be generated by the web servers 32 (FIG. 1) using arepository of templates 33. As will be further described below, auser/customer can indicate that they “like” an item shown in the webpage by clicking on the Like button 130. The history of a user orcustomer's “likes” can be tracked and stored as behavioral data in therepository 38.

For purposes of illustration in the figures, the fictitious names“Catalog.com” and “Social Net” are used in the display pages to refer tothe electronic catalog system 30 and the social networking system 50,respectfully. In addition, the fictitious names Chris Customer and KimContact are used to refer, respectively to a particular user/customer ofthe electronic catalog system 30 and to a social network contact of thiscustomer. In the example web pages shown, it is assumed that Chris, thecustomer viewing the illustrated web pages, (1) has accounts with boththe electronic catalog system 30 and the social networking system 50,(2) has created a social network profile on the social networking system50, and (3) has created contact relationships with other members of thesocial networking system, including Kim. Kim may, but need not, have anaccount with the electronic catalog system 30.

FIG. 2A illustrates an example of an item detail page 100 aspersonalized for Chris. In this example, the item is a book, but inother examples, the item may be a movie, music download, consumerproduct, or any other product or service available from the catalogsystem 30. In other environments, the item represented on the itemdetail page may, for example, be a news story, news feed, web site,blog, author, musical artist, restaurant, or other type of item. The webpage includes a number of distinct areas that can be used to displaypage features 104-126 that contain various types of content. Some or allof the page features 104-126 (or others not shown in the example webpage illustrations) can be customized based on social networking profileinformation retrieved from the social networking system 50. The examplepage features 104-126 illustrated in FIG. 2A are intended toschematically illustrate certain types of page features that can be usedon a display page but are not intended to be limiting. For example, thecontent, appearance, positioning, sizes, and so forth of the pagefeatures may be different than shown.

The example page feature 104 includes an image of the product and abrief description of the item (e.g., title, author, price, and whetherthe item is in stock). In this example, the Like button 130 ispositioned near the title of the item. The size of the Like button 130(relative to the size of the viewable area of the display page 100)and/or its positioning on the page 100 can be selected so that the Likebutton 130 is relatively easy for a user to find but not so large as tocrowd other page features. Examples of interactions between theuser/customer and the catalog system 30 after the user/customer selectsthe Like button 130 are described below with reference to FIGS. 2B-2F.In many user interfaces, the Like button 130 can be selected, forexample, by moving a cursor to the button 130 and clicking a mouse ortouchpad button on a user computing device 34 or by tapping the button130 on a touchscreen.

In some implementations, the catalog system 30 may establish a “default”position, size, shape, and/or appearance for the Like button 130. Forillustrative purposes, the Like button 130 as shown in FIG. 2A will beconsidered to be the “default” Like button for a detail page for aproduct. The presentation of the default Like button may be differentfor different types of display pages. For new users or for customers whohave not chosen to link their catalog system accounts with a socialnetworking account, the personalization service 40 may present the Likebutton 130 in its default form on a display page. For customers who havechosen to link their catalog system accounts with a social networkingaccount, the personalization service 40 may use social networkinginformation (e.g., social networking member profiles) to customize orpersonalize the presentation of the Like button 130 to the customer(see, e.g., FIGS. 3A-3C).

The page features 108-126 are examples of other types of informationthat can be presented to a user/customer. The page feature 108 is anarea of the page 100 allowing a user/customer to add one (or more)quantities of the item to an electronic shopping cart or to a wishlistfor future purchase. The page feature 108 may be presented prominently(and in a standard position) on the display page 100 so that thecustomer can easily order the item. The page feature 112 provides linksto other sellers of the product, and the page feature 116 shows anadditional item that is frequently purchased together with the productdescribed in page feature 104. The page feature 118 providesfunctionality for a user/customer to download the item (a book, in thisexample) to an electronic book reader. The page feature 122 shows otheritems purchased by customers who also purchased the item described onthe page 100. The page feature 126 includes areas for a detaileddescription, editorial reviews, and customer reviews of the item.Additional or different page features can be used in other displaypages.

To protect the privacy of customers, the system 30 may establish an“opt-in” procedure by which a customer must affirmatively consent orauthorize the electronic catalog system 30 to connect or link thecustomer's account on the catalog system 30 with the customer's accounton the social networking system 50. If the customer's consent orauthorization is not given, the catalog system 50 will not attempt toretrieve the customer's social networking profile information. In somesuch cases, the system 30 may thereafter deemphasize the appearance ofthe Like button 130 for this particular customer by, for example, movingthe button to the bottom of display pages, reducing the size of thebutton (compared to the default Like button), or not presenting the Likebutton at all (on some or all display pages). In situations in which theLike button is presented to a non-consenting customer (e.g., the defaultLike button is used), the Like button 130 may have limited (or no)functionality when selected by the customer (unless the customeraffirmatively consents at a later time). In other implementations, thesystem 30 may establish an “opt-out” procedure by which customer acustomer can request that his or her social networking information isnot accessed by the system 30.

The connection between a catalog system account and a social networkingaccount can be established, for example, when the user/customer clicksthe Like button 130. The actions following the click of the Like button130 may depend on whether (or not) the user/customer is logged into thecatalog system 30 or has an existing account with the system 30.

In some embodiments, if a user/customer who is not logged in to thecatalog system 30 clicks the Like button 130, the user/customer may befirst requested to log in (if already a customer) or to establish anaccount (if not already a customer). FIG. 2B illustrates an exampleformat of a login or sign-in page 140 that may be used to allow acustomer to log in or establish an account with the catalog system 30.If a customer already has an account, the customer can enter a username(e.g., an electronic mail address) and a password in section 144. Thepage 140 includes a section 148 that describes privacy protections andthe types of actions the system 30 will not take without customerconsent, and describes some of the advantages of connecting theuser/customer's accounts on the catalog system and the social networkingsystem.

FIGS. 2C to 2E illustrate examples of popovers that may be displayed onthe web page of FIG. 2A during the process in which a customer grantspermission to the electronic catalog service 30 to connect to the socialnetworking service 50. In this illustrative example, since Chris has anaccount with the catalog system 30, after clicking the sign-in button onthe page 140 (FIG. 2B), Chris can be presented with a popover 152 thatmay be displayed over the product page 100 to which Chris had initiallynavigated (FIG. 2C). The popover 152 includes a description of thecatalog system's policy to protect the privacy of customer's personaldata and a description of how the customer can use the Like buttonfunctionality. Chris can click the button 156 to continue the connectionprocess.

After clicking the button 156, Chris is presented with popover 160,which requests permission from Chris to connect his catalog systemaccount and his social networking account. The popover 160 describes theactions the catalog system 30 will take if Chris consents to connectinghis catalog system account with his social networking account (FIG. 2D).If Chris decides not to consent, Chris can click button 168, and thesystem 30 will not attempt to connect or link Chris's catalog systemaccount to his social networking account. In this situation, thecustomer's social networking information will remain private andunavailable to the catalog system 30. As described above, in such acase, the Like button may have limited (or no) functionality or may bedeemphasized on display pages.

If Chris decides to consent, Chris can click button 164, and the system30 will take actions to connect the respective accounts. If Chris is notalready logged in to the social networking system 50, the catalog system30 may prompt Chris to authenticate that he has an account on the socialnetworking system 50 (e.g., to authenticate that Chris is a member). Forexample, the catalog system 30 may use a popover (not shown) that allowsChris to enter his social networking username and password so that thesystem 30 can be authorized to access Chris's social networking profiledata from the social networking system 50.

In the example catalog system 30 illustrated in FIG. 1, the socialnetwork interface 46 can use API calls to the service interface 58 ofthe social networking system 50 to establish the connection betweenChris's catalog system account and his social networking system account.The catalog system 30 can retrieve Chris's member profile from thesocial networking system 50 and, in some implementations, store hismember profile in cache 48.

After the connection has been made by the system 30, Chris may bepresented with popover 172 that indicates the connection has beensuccessfully made (FIG. 2E). In the illustrated embodiment, the popover172 includes a text box 176 that allows Chris to post a comment to thewall of his social networking account. The popover 172 may also includea checkbox 180 that allows Chris to consent to use the functionality ofthe Like button without having to sign in to his social networkingaccount when he visits the catalog system web site in the future. IfChris consents, the system 30 can use Chris's stored social networkingauthentication credentials (e.g., username and password) toautomatically sign-in to the social networking site for Chris. If Chrisdoes not consent, when he visits the catalog system in the future Chrismay be presented with a sign-in popover (not shown) that permits his tosign-in to the social networking system 50 (if he is not already signedin).

In other embodiments, the catalog system 30 may set up additional oralternative ways to connect a catalog system account with a socialnetworking account. For example, the system 30 may provide a dedicateddisplay page to which users can navigate to connect their accounts, orthe system 30 may present a button or link on display pages that directthe user/customer to a connection page (e.g., “Click here to connect toSocial Net”). In some implementations, the social networking system 50may include functionality for connecting a social networking account toan electronic catalog system account.

If a customer has already logged in to the catalog system 30 and hasalready consented to the connection between the respective accounts, thecustomer need not be presented with the sign-in page 140 shown in FIG.2B and the popovers shown in FIGS. 2C-2E. In this case, after thecustomer clicks the Like button 130 (FIG. 2A), popover 184 shown in FIG.2F may be presented to the customer. The example popover 184 includes anindicator 186 that Chris and others in his social network on the socialnetworking system 50 liked the product described on the page 100 (FIG.2A). The catalog system 30 can determine such information (e.g., that 4others in his social network liked the product) by, for example,programmatically analyzing Chris's member profile retrieved from thesocial networking system 50 and/or customer account and behavioral data38 (FIG. 1). The popover 184 may include an image 188 of Chris obtainedfrom his member profile and may include a text box 176 for Chris tocomment on the product. If Chris adds a comment to the text box 176, hecan click button 187 and his comment will be automatically posted to thesocial networking system 50 (e.g., via API calls made by the socialnetwork interface 46). The social networking system 50 can presentChris's comment on his wall and his friends' news feeds (see, e.g.,FIGS. 4A and 4B).

After having decided to “like” an item by clicking the Like button 130,a customer may at a later time decide that he or she does not like theitem or has clicked the Like button 130 by mistake. The catalog system30 may include functionality for a customer to “unlike” the item. FIG.2H illustrates an example popup 198 that may appear for an item thecustomer likes. The popup 198 includes the indicator 186 that thecustomer and others in his social network liked the item and alsoincludes an Unlike button 199. If the customer clicks the Unlike button199, the catalog system 30 may remove information in its customer andbehavioral data 38 that the customer likes the item. The catalog system30 may also communicate the customer's preference to the socialnetworking system 50 (e.g., via API calls to the service interface 58).The social networking system 50 may update the customer's member profileand remove previous comments or postings indicating the customer likedthe item.

After having opted-in and authorized a connection between catalog andsocial networking accounts, a customer may change his or her mind andwant to opt-out of the connection to the social networking system 50.The catalog system 30 may establish display pages (or links thereto) sothat a customer can withdraw consent and de-link the respectiveaccounts. After customer consent is withdrawn, the catalog system 30 mayremove customer social networking information (e.g., username andpassword information) from the cache 48.

B. Customization of the Like Button on Display Pages

As will be discussed with reference to FIG. 5, the catalog system 30 cananalyze the social networking information (e.g., member profiles)obtained from the social networking system 30 for customers who haveconsented to connect their respective accounts. Based at least in parton this analysis, the page customization engines 42 of thepersonalization service 40 can personalize or customize the appearanceof page features on display pages presented to the customer. Forexample, characteristics of the Like button 130 including, but notlimited to, appearance, positioning, content, and size can be customizedbased at least in part on the customer's usage of the social networkingsystem (e.g., light user, moderate user, heavy user, or ability toinfluence other users) and/or the degree to which the customer (or thecustomer's social networking friends) are likely to select items fromthe catalog system 30.

As described above, FIG. 2A illustrates an example of the Like button130 that may be used on pages describing items available for purchasefrom the catalog system 30. The appearance of the Like button 130illustrated in FIG. 2A may represent a “default” appearance of the Likebutton 130 that can be used if the system 30 has little (or no)information about the social networking habits of the user or customer.The default appearance of the Like button 130 may also be used forcustomers who are relatively light users of the social networking system50. The appearance and positioning of the default Like button 130 may beselected so that it is relatively easy for a user/customer to locate thebutton on a web page but not so large as to crowd other page features.

The system 30 may use behavioral data (from the repository 38) todetermine that a particular customer rarely or never clicks on the Likebutton 130, has not clicked on the Like button 130 for a significantperiod of time, or typically clicks the Like button 130 for some genres(e.g., books) but not others (e.g., music). For certain such customers,the personalization service 40 may deemphasize the appearance of theLike button 130 (as compared to the default) by, for example, moving thebutton to the bottom of display pages (so the customer would have toscroll the page to locate the button), reducing the size of the buttonof the font size of the button text (compared to the default Likebutton), or not presenting the Like button at all (on some or alldisplay pages). For example, if a customer frequently “likes” books andrarely or never “likes” music downloads, the personalization service maydisplay the Like button 130 on item detail pages for books but maydeemphasize the appearance of the Like button 130 on item detail pagesfor music downloads. If analysis of the customer's social networkingmember profile indicates renewed interest in social networking by thecustomer, the personalization service 40 may restore the presentation ofthe default Like button (or emphasize the button even more). In someimplementations, after having deemphasized the Like button 130 for acustomer, the personalization service 40 may, from time to time, presentthe Like button in its default (or other) appearance to provide suchcustomers with future opportunities to access the Like functionalityprovided by the catalog system 30.

The page customization engines 42 of the personalization service 40 mayalter the appearance of the Like button 130 to emphasize the button forcustomers, for example, who are more active social networking users orwho have social networking friends who may be likely to purchase itemsfrom the catalog service 30. FIGS. 3A to 3C illustrate example formatsof display pages 100 a-100 c in which factors including, but not limitedto, the amount of content, the positioning, the appearance, and the sizeof the “Like” area are emphasized when compared to the example “default”Like button 130 illustrated in FIG. 2A. FIG. 3A illustrates an exampleformat of a Like button 130 a that has been moved from the exampledefault position near the title of the item (see FIG. 2A) to a positionin the page feature 108 that allows customers to add one (or more)quantities of the item to an electronic shopping cart or to a wishlistfor future purchase. In this example, not only is the overall size(including text size) of the Like button 130 a larger than the defaultLike button 130, but the Like button 130 a has assumed a more prominentposition on the page 100 a, because the button 130 a has been placed ina page feature that customers naturally turn to when ordering items. Acustomer who is likely to purchases the item may also be more likely toclick the Like button 130 a. The page customization engines 42 maypresent the Like button 130 a to customers the system 30 determines arelight-to-moderate users of the social networking system 50, who mightappreciate a more prominent appearance of the Like button 130 a ascompared to the default Like button 130.

FIG. 3B illustrates an example of a page 100 b in which the “like”feature is emphasized to a greater degree than the Like buttons 130 and130 a shown in the pages 100 and 100 a, respectively. In this example,the “like” feature comprises a Like area 204 a that takes up morephysical space (e.g., area) on the display page 100 b than either of thebuttons 130 or 130 a on their respective pages 100, 100 a. Similarly tothe Like button 130 a (FIG. 3A), the Like area 204 a is positioned inthe page feature 108, so that it is readily viewable by customers whoare likely to purchase the item. However, in this example, the Like area204 a includes not only a Like button 130 b but also includes additionalcontent, e.g., the comment box 176 and the indicator 186 that others inthe customer's social network like the item. In other examples, the Likearea 204 a could include additional or alternative content such as,e.g., the customer's social network profile image.

Due to the larger size of the Like area 204 a (compared to the Likebuttons 130, 130 a), the page presentation engines 42 may choose toresize, rearrange, remove, or substitute other page features to bepresented on the page 100 b. For example, in FIG. 3B, the page feature112 (links to other sellers of the product) shown in FIG. 2A has beenremoved, and the page feature 116 (items frequently bought together) hasbeen “moved up” in the page 100 b to be positioned below the pagefeature 108.

The Like area 204 a is more prominently displayed in the page 100 b thanthe Like buttons 130, 130 a are in their respective pages 100, 100 a.The page customization engines 42 may present the Like area 204 a, forexample, to customers the system 30 determines are moderate users of thesocial networking system 50 or moderate influencers of potentialselection decisions, as such users may be more likely to appreciate theadditional social networking content and functionality of the Like area204 a (as compared to the buttons 130, 130 a).

FIG. 3C illustrates an example of a page 100 c having a Like area 204 bthat is emphasized to a greater degree than the Like area 204 a shown inFIG. 3B. In this example, the Like area 204 b includes Like button 130c, comment box 176, and the customer's social networking profile image.The Like area 204 b includes customization areas 210 and 214 that can beused to present further content based at least in part on the customer'ssocial networking information. In this example, the Like area 204 bextends across the web page 100 c. Due to the larger size of the Likearea 204 b, the page customization engines 42 have removed the pagefeatures 108, 112, and 116 shown in FIG. 2A, and the product detailspage feature 126 has been “moved up” to be positioned below the Likearea 204 b.

Continuing with the example described with reference to FIGS. 2A-2H, thecatalog system 30 has identified member IDs of two of Chris Customer'sfriends on the social networking system. The catalog system 30 has usedthe customer ID-to-Member ID Mappings 44 to determine that one of themember IDs belongs to Kim Contact who is also a customer of the catalogsystem 30. Because the system 30 knows Kim's customer ID, the system 30can analyze behavioral data 38 to determine, e.g., Kim's purchasing anditem viewing histories. The system 30 also determines that Kim haslinked her social networking account and her catalog system account.

The system 30 is unable to personally identify the second member ID(e.g., there is no mapping to customer ID in the database 44 at thepresent time). This may indicate that the second member is not acustomer of the catalog system 30 or has not linked his or her customeraccount with his or her social networking account. The system 30determines from Chris's member profile that the second member uses asocial networking name “Frank Friend” (which may or may not be thisperson's real name).

Based at least in part on an analysis of Chris's and Kim's socialnetworking member profile data and customer account and behavioral data38, the page customization engines 42 customize the customization areas210 and 214 for Chris. In this illustrative example, the personalizationservice 40 determines that Kim's birthday is in 3 weeks and that Kimlikes the author of the book on the page 100 c that is being viewed byChris. The system 30 also determines from Kim's purchasing history thatKim has not purchased this book. The personalization service 40customizes the customization area 210 to include Kim's social networkingprofile image and information about Kim's upcoming birthday. Because Kimhas not purchased the book, the personalization service 40 includes abutton 220 in the customization area 210 that allows Chris to purchase acopy of the book for Kim for her birthday.

In this example, the catalog system 30 analyzes Chris's profile data anddetermines that Frank also likes books by the author of the book shownon page 100 c. The personalization service 40 customizes thecustomization area 214 to include Frank's social networking profileimage (obtained from Chris's member profile data), and a button 224 thatChris can click to send a recommendation to Frank. If Chris clicks thebutton 224, the messaging engines 43 of the personalization service 40can communicate a message to the service interface 58 of the socialnetworking system 50 about Chris's recommendation. The social networkingsystem 50 can post Chris's recommendation on Frank's wall or deliver aprivate electronic mail message to Frank indicating Chris'srecommendation. The post or the electronic mail message may include alink to the catalog system 30 so that Frank can easily order the item,if desired, from the catalog system.

The catalog system 30 can include additional or different customizationareas in the Like area 204 b (or in other customizable displayfeatures). For example, the catalog system 30 may use Chris's socialnetworking and behavioral data to determine recommendations of items forChris. As an example, the system 30 may determine from Chris's socialnetworking data that Chris likes books by the author “Neal Stephenson”(see, e.g., FIG. 4A) and from Chris's purchasing history that Chris hasnot purchased the book “Cryptonomicon.” The system 30, in this example,may include a customizable area with a recommendation to Chris that hemight like “Cryptonomicon.”

The page customization engines 42 may present the Like area 204 b tocustomers the system 30 determines are moderate-to-heavy users of thesocial networking system 50, and who are more likely not only toappreciate the additional social networking content and functionality ofthe Like area 204 b but also more likely to purchase or recommend itemsto their social networking friends. As will be discussed below, the pagecustomization engines 42 may present the Like area 204 b to customerswho are significant influencers of potential purchasing decisions madeby other users for the item or related items. The page customizationengines 42 may also present Like areas similar to area 204 b tocustomers who have social networking friends that are also customers ofthe catalog system 30 and likely to purchase items from the catalogsystem. The increased integration of social networking features withcatalog system features that is included in the areas 204 a, 204 b(e.g., the comment box 176 and the customization areas 210, 214) make itrelatively easy for such customers to interact with the socialnetworking system 50 and thereby “spread the word” about items to theirsocial networking contacts or to others.

The disclosed systems and methods for customizing the Like button (orother page features) advantageously can increase the likelihood thatcustomers will use such buttons, thereby increasing the amount of itempreference information that can be collected for particular customers.Such item preference information can enable the catalog system toprovide more reliable item recommendations to customers or to otherwiseprovide a greater degree of personalization. For example, the customizedareas of the display page may include information about items that arepopular among the customer's social network contacts.

The Like buttons 130-130 c, Like areas 204 a, 204 b, and customizationareas 210 and 214 are merely representative of the format and types ofcustomization and personalization that can be performed by embodimentsof the personalization system 40. The Like buttons, areas, and/or othercustomized areas may be implemented using text other than the term“like” and/or using graphical symbols. For example, the catalog systemmay display “thumbs up” and “thumbs down” buttons that can be clicked toindicate user like or dislike of an item or may display a rating elementthat enables users, via a single mouse click, to rate an item on a scaleof 1 to 5 stars. The systems and methods disclosed herein can be used tocustomize or personalize such “thumbs up/thumbs down” buttons or ratingelement areas of display pages or other types of page features thatallow a user to interact with a display page. The systems and methodsdisclosed herein can be used to customize the “look and feel” of anytype of content presented to the user, with the customization based atleast in part on the size or activity of the user's social network.

Further, the screen displays shown in FIGS. 2A-3C are merelyrepresentative of some of the types of display pages and personalizedpage features that may be presented to users and customers, and of theformat in which such display pages and page features may be presented tousers and customers. In other examples, the appearance, size,positioning, content, and so forth of the customizable features ofdisplay pages may be different than shown in the illustrative displaypages. Also, for privacy reasons, some or all of the types ofpersonalized page features shown in the illustrative display pages maybe accessible to a customer only when the customer is logged into theelectronic catalog system 30 and has consented to a connection betweenthe customer's catalog system and social networking system accounts.

C. Example Social Networking System Display Pages (FIGS. 4A and 4B)

FIGS. 4A and 4B illustrate example formats of web pages that can begenerated by the social networking system 50 when a member of the socialnetworking system has connected his or her social networking account andelectronic catalog account.

FIG. 4A is an example format of a web page 250 a including a “wall” thatallows the member and the member's friends or contacts to post contentsuch as comments, photos, videos, etc. In this example, the web page 250a includes Chris's profile image and various fields of profileinformation for Chris. The web page 250 a also includes postings 254that are presented on Chris's wall. For example, after Chris consentedto the connection of his catalog system and social networking systemaccounts, the messaging engines 43 of the catalog system 30automatically communicate a message to the social networking system 50that Chris has made the connection, and the social networking system 50posts this message to Chris's wall. After Chris clicked the Like button130 indicating that he liked the item shown on display page 100 (FIG.2A), the messaging engines 43 communicate a message to the socialnetworking system 50 that Chris likes the item, and the socialnetworking system 50 posts this message to Chris's wall. In addition,the social networking system 50 may include such postings on the newsfeeds of Chris's friends on the social networking system. The socialnetworking system 50 can use the messages received from the catalogsystem 30 to update Chris's member profile to include information aboutthese postings (e.g., that Chris likes a particular item).

FIG. 4B is an example format of a display page 250 b “news feed” thatpresents a personalized list of most recent or relevant messages andpostings for the member. In some implementations, the social networkingsystem 50 can use a ranking algorithm to determine which posts willappear on each member's news feed. For example, the ranking of a post ormessage sent from one member or contact to another member may be basedat least in part on (1) how often the members or contacts interact onthe social networking system, (2) how many comments and “likes” the postor message has received, and (3) how old the post or message is. Thenews feed of each member can be continuously updated by the socialnetworking system 50 based on the current rank of posts and messages tothe member.

As will be discussed with reference to FIG. 6, the catalog system 30 cananalyze the social networking information retrieved from the socialnetworking system to determine whether and how often to communicatecustomized messages about items and services available on the catalogsystem 30 to selected members of the social networking system. In theexample news feed shown in FIG. 4B, the catalog system 30 has analyzedthe social networking information and customer behavioral data and hasdetermined that several of Chris's friends on the social networkingsystem recently purchased an item. The catalog system 30 also hasdetermined that Chris had not purchased the item from the catalog system30. Based (at least in part) on this analysis, the messaging engines 43have communicated a personalized message to Chris about the item. Thesocial networking system 50 has received the message from the catalogsystem 30 and has posted the message 258 to Chris's news feed (FIG. 4B).The message 250 can include hyperlinks that can be clicked by Chris todirectly access the item page on the catalog system 30. For example, inthe message 258, the title of the item and the product image may behyperlinks.

In other examples, the message from the catalog system 30 may be apersonal message communicated directly to a member that the socialnetworking system 50 posts to a personal (private) message area of thesocial networking system rather than to a publicly viewable area such asthe news feed. In still other examples, the message from the catalogsystem 30 may be an electronic mail message communicated to a member'selectronic mail account.

Although the example screen displays shown in FIGS. 2A to 4B depict webpages displayed by a web browser, other types of user interfaces may beused to view the display pages. For example, the personalized contentmay be presented via a user interface of a proprietary mobile phone orelectronic book reader application that makes page requests over anetwork to the personalization service 40.

III. Processes for Generating Social Networking Profile-Based Content

FIG. 5 illustrates an embodiment of a process 300 for generatingcustomized content using social networking profiles. The process 300 maybe executed by the personalization service 40 (e.g., page customizationengines 42) of the catalog system 30 to generate personalized displaypages that are presented to a user or customer when a user computingdevice 34 requests a page from the catalog system 30 (e.g., an itemdetail page). The process 300 can be used to generate web pages such as,e.g., those illustrated in FIGS. 2A-3C.

At block 304, the process 300 determines whether a customer hasauthorized a connection between the customer's catalog system accountand social networking system account. If the customer has not providedthe authorization, the process 300 ends, which protects the privacy ofthe customer's social networking information. If the customer hasprovided authorization, the process 300 continues at block 308 where thepersonalization service 40 retrieves the customer's social networkingmember profile from the social networking system 50. At block 312, thepersonalization service 40 analyzes the customer's member profile todetermine the member IDs of the customer's friends and contacts in thecustomer's social network. The group of friends and contacts identifiedby member ID will be referred to below as the customer's “social networkcontacts.”

At block 316, the personalization service 40 uses the customerID-to-member ID mappings stored in the repository 44 to determinewhether any of the social network contacts identified at block 312correspond to customers of the catalog system 30. Member IDs that can bemapped to a customer ID will be referred to below as “friend customers,”because the social network contact is both a friend of the customer anda customer of the catalog system 30. Member IDs that cannot be mapped toa customer ID will be referred to below as “unknown friends,” becausealthough the social network contact is a friend of the customer, thesocial network contact cannot be identified as a customer and is(effectively) unknown to the catalog system 30. In some cases, unknownfriends may be customers of the catalog system 30 who have not consentedto linkage between their social networking and catalog accounts.

If the catalog system 30 determines that a mapping between customer IDand member ID is not already stored in the repository 44, the system 30may add this new mapping to the repository so that the catalog system 30can build up an up-to-date database linking social networking systemmembers and catalog system customers.

In some embodiments of the process 300, the personalization service 40may repeat blocks 304 to 316 for the friend customers identified atblock 316 to generate a more detailed picture of the customer's socialnetwork. Accordingly, in various embodiments, the blocks 304 to 316 maybe performed once to obtain the customer's social network out to thefriend level, twice to obtain the customer's social network out to thefriend-of-friend level, and so forth. The retrieved social networkingprofile information can be stored in the cache 48 to reduce the need forfuture retrievals of social networking information for the socialnetwork contacts of the customer.

At block 320, the personalization service 40 retrieves from therepository 38 customer account data and behavioral data (e.g., purchasehistories, search histories, item viewing histories, etc.) for thecustomer and the friend customers. As discussed above, the catalogsystem 30 may not have customer or behavioral information for theunknown customers or may not be able to map the unknown customersbecause they have not linked their social networking accounts to theircatalog system accounts. In some embodiments, the system 30 attempts tofind a match between an unknown customer and a current customer based onsimilarities between the profiles of an unknown customer and the matchedcustomer. For example, the system 30 may attempt to match demographicprofiles (e.g., age, gender, geographical location), likes andpreferences for items, authors, artists, organizations, hobbies, etc.The personalization service 40 may use the behavioral data for the“matched customer” as a proxy for the behavioral data for the unknowncustomer.

In some embodiments of the process 300, the blocks 304 to 320 arerepeated for each social networking system to which the customer haslinked his or her catalog system account.

At block 324, the personalization service 40 determines the socialnetwork usage by the customer. For example, the usage may be based atleast in part on some or all of the following factors: (1) the number ofsocial network contacts, (2) the number of friend customers, (3) thenumber of unknown customers, (4) the amount of interaction on the socialnetworking system between the customer and the social contacts, and (5)the amount of recent activity by the customer on the social networkingsystem. The usage may comprise a weighted combination of these factors(or additional or different factors).

Social network usage may also include a customer's ability to influenceothers with respect to items available from the catalog system 30. Forexample, the system 30 may determine whether a customer is an actual orpotential “influencer” with respect to one or more items. Influencersmay, but need not, have a relatively large social network and/or may,but need not, be heavy users of social networking sites. Influencers canact as promoters or advocates by raising awareness of items amongvarious communities or social networks. For example, an influencer maybe a writer, reviewer, blogger, commentator, or celebrity whose writingsor postings are followed by others or are relatively widelydisseminated. Influencers may shape future buying decisions by othersand may be trendsetters or early adopters who can increase the perceivedneed for items or categories of items by others. Influencers may beinfluential with respect to one or a few items (or categories of items)or may be influential with respect to broad classes or genres. Forexample, a customer who is an online reviewer of rap music may be aninfluencer for the category of rap music but may have little or noinfluence with respect to other categories of music (e.g., rock,classical, or jazz) or other item categories (e.g., books, movies,fashion, etc.).

In various embodiments, the system 30 determines social network usage byincluding (additionally or alternatively to the above factors) acustomer's influence based at least in part on one or more of thefollowing factors: (1) the number of times a customer posts informationabout or comments on an item or group of items, (2) whether the customeris among the first in his or her social network to post informationabout or comment on item(s), (3) whether others have indicated that theyhave found a posting or comment by the customer to be helpful, (4)interaction among the customer's social network contacts with respect tothe customer's post or comment related to an item, (5) the amount oftraffic to a detail page for the item that is generated by customerviews of postings or comments by the influencer, and (6) the number orcash value of or revenue generated by selections of the item based onthe web traffic in factor (5). As an example of factor (4), the catalogsystem 30 may analyze the social network data and/or customer behavioraldata to determine the number of times a customer's comment or post aboutan item has been liked or commented on by others. As an example offactors (5), the catalog system 30 may analyze the social network dataand/or customer behavioral data to determine the number of timescustomers have clicked a link to the detail page in a posting or commentby the influencer. As an example of (6), the catalog system 30 may usethe social network data and/or customer behavioral data and theinformation from factor (5) to determine how many customers selected theitem for, e.g., purchase, rental, etc.

At block 328, the personalization service 40 determines the potential ofthe customer's social network usage to drive traffic to a display pagefor an item or to generate selections of the item or other items fromthe catalog system 30. For example, the potential may also reflectpotential for selections of items that may be frequently purchasedtogether with the item or that may be marketed together with the item bythe catalog system 30 (e.g., extended product warranties for the item, apaid membership program that provides additional customer benefits suchas, e.g., low (or no) cost or expedited shipping, etc.). Since thepotential for traffic to or selections from the catalog system may bemore likely for those users with accounts on the system, the potentialmay be determined by weighting information about friend customers morethan information about unknown customers (whose profile has not beenmatched to a profile of a current customer). For example, the potentialfor traffic or selections may be based at least in part on some or allof the following factors: (1) the number of friend customers (e.g.,relative to the total number of social contacts), (2) the number ofunknown customers whose profile has been matched to a current customer,and (3) behavioral histories of the friend customers or matchedcustomers. The behavioral histories (from repository 38) can be used toidentify to friend customers (or matched customers) who frequentlyselect (or have recently selected) items from the catalog system 30 orwho have frequently (or recently) clicked the Like button. Suchcustomers tend to have more potential to visit, select from, or indicatelikes and preferences from the catalog web system. Customers who have atendency to indicate their likes and preferences for items generallywill drive more traffic (and potential sales) to the system, becausetheir likes and preferences can be communicated to their friends on thesocial networking system (e.g., such customers may be influencers forparticular types of items). Thus, the likes and preferences of thesecustomers may have more potential to “spread the word” about items andservices, which can lead to further web traffic, sales, and newcustomers for the catalog system 30.

For particular classes or genres of items (e.g., books, music, video,etc.), the system 30 may analyze the behavioral data to determine thepotential of friends or matched customers to buy items in that class orgenre. For example, a customer who frequently buys books but onlyinfrequently buys music may be given more potential when the requesteditem detail page is for a book than when the requested item detail pageis for music.

At block 332, the process 300 generates one or more “social networkingscores” for the customer based at least in part on the analysisperformed at blocks 324 (e.g., social networking usage) and 328 (e.g.,potential for traffic or selections of the item or other items). Forexample, the social networking score will tend to be higher forcustomers having a greater amount of social networking usage or having agreater potential to direct traffic to or generate selections from thecatalog system 30. In some embodiments, the social networking score is aweighted combination (e.g., weighted average) of one or more of thefactors determined at blocks 324 and 328. As one example, a customer mayhave a large and active social network (e.g., having a relatively largenumber of social network contacts who frequently interact). This factorwould tend to increase the social network score for the customer.However, if relatively few of the social network contacts are current orpotential customers or likely to visit the catalog system, the overallsocial networking score generated this customer may be relatively low.As another example, a customer may have a relatively small socialnetwork (e.g., having a relatively small number of social networkcontacts) but a relatively high percentage of these social networkcontacts are current customers who frequently purchase items from thecatalog system. The overall social networking score for this customermay be relatively high (e.g., higher than the overall score for thecustomer in the first example).

In some implementations, the system 30 may generate multiple scores,with different scores generated for different customizable features thatcan be included in the display page. The different types of customizablefeatures may depend on the item (or type of item) and/or events that mayoccur in the customer's social network. Continuing with the illustrativeexample of Chris Carpenter, assume that his friend Kim Contact'sbirthday is in 3 weeks. The process 300 may generate a score for thecustomizable feature 210 illustrated in FIG. 3C, which includes anotification to Chris about Kim's upcoming birthday and a button 220allowing Chris to purchase an item for Kim. The process 300 may generatea score for other possible customizable features. For example, thefeature may include a notification about Kim's upcoming birthday andinformation about one or more related items (e.g., an item frequentlypurchased with the item, an extended warranty, a paid membershipprogram, etc.). The scores may depend (at least partially) on the timebefore an event occurs. For example, the scores discussed above for pagefeatures related to Kim's birthday may depend on whether Kim's birthdayis several weeks, several days, or one day in the future. As will bediscussed with reference to block 340, the social networking score(s)can be used by the page customization engines 42 to customize theappearance, size, positioning, and prominence of the Like button 130 (orLike area 204) for the customer.

At optional block 336, the catalog system 30 may establish scores (orrankings) for some or all of the other features that can be presented ondisplay pages (see, for example, the page features 104-126 illustratedin FIG. 2A). The catalog system 30 may establish a score for the featurebased at least in part on one or more factors including: (1) theimportance of the feature to the display page, (2) customer expectationsthat the feature will be present on the page or have a particularappearance or position on the page, (3) actual or potential revenuegenerated by the feature if the feature appears on the page, and (4)actual or potential lost revenue if the feature does not appear (or isdeemphasized) on the page. For example, the item image and descriptionin the page feature 104 and the item ordering functionality in the pagefeature 108 are very important to a detail page describing the item.Also, customer expectations about the “look and feel” of the catalogsystem's web pages may indicate that the page features 104 and 108should be near the top of the page and on the left and right,respectively. Such page features may have relatively high scores (orrankings). Other features may be less important to certain display pagesand their appearance, size, positioning, etc. on the page may bemeasured by a score determined by comparing, for example, the amount ofrevenue (actual or potential) that may be generated by their appearanceor the amount of revenue (actual or potential) that may be lost if theydo not appear (or appear less prominently).

At block 340, the page customization engines 42 of the personalizationservice 40 can generate one or more customizable features of a displaypage based at least in part on the social networking score(s) determinedat block 332. In some embodiments, the higher the social networkingscore(s), the higher the degree of customization, and, conversely, thelower the social networking score(s), the lower the degree ofcustomization. For example, for customers with relatively low socialnetworking scores (e.g., light users of the social networking system),the personalization service 40 may generate a display page that includesthe “default” Like button (see, the example illustrated in FIG. 2A). Forcustomers with higher social networking scores (e.g., moderate users ofthe social networking system), the personalization service 40 mayemphasize the appearance (and/or content) of the Like button asillustrated, for example, in FIGS. 3A or 3B (e.g., the Like area 204 a).For customers with even higher social networking scores (e.g., heavyusers of the social networking system or users with significantinfluence), the personalization service 40 may emphasize the appearanceand content to an even greater degree and include a prominent Like area204 b as illustrated, for example, in FIG. 3C.

In some embodiments, the personalization service 40 may compare one ormore of a customer's social networking scores to one or more thresholdsto determine the degree of customization to be presented to the customeror to determine which customizable features to include in the displaypage. As one example, the catalog system 30 may set thresholds thatcorrespond to light, moderate, and heavy social networking usage andprovide increasing amounts of customization if the customer's socialnetworking score equals or exceeds a corresponding threshold. As anotherexample, the catalog system 30 may rank scores for different pagefeatures and include one or more of the page features if theirrespective scores exceed one or more thresholds. In some suchembodiments, one or more of the thresholds can be predetermined, and inother embodiments, one or more of the thresholds can by adjusted orchanged by the personalization service 40 as the catalog system gathersinformation about customer usage of the “like” functionality oreffectiveness of the like functionality to generate traffic to orselections from the catalog system 30.

The personalization service 40 may use the social networking score forapplications. For example, if a customer is very active on the catalogsystem or the social networking system, or has a relatively large socialnetwork (e.g., is a moderate or heavy social networking user), or is asignificant influencer of other users' behaviors (e.g., is aninfluencer), the catalog system 30 may prompt the customer to postreviews or ratings of items on the catalog system or social networkingsystem. In some embodiments, the catalog system may give the customer anincentive to make such postings, e.g., by compensating the customer whenthe customer's social networking contacts make purchases from thecatalog system.

Although some of the above examples are described in terms of threelevels of customization (e.g., light, moderate, and heavy socialnetworking or influence), this is not intended to be a limitation, andin other examples, any suitable amount or degree of customization can beprovided by the personalization service.

As discussed above with reference to optional block 336, someimplementations of the catalog system 30 generate scores for otherfeatures that can be presented on a display page. In some suchimplementations, the personalization service 40 may compare thecustomer's social networking score to scores for other page features todetermine the extent of the customization of the respective features.For example, the Like area 204 b in the example shown in FIG. 3C issignificantly larger than the default Like button 130 shown in FIG. 2Aand replaces the page features 108, 112, and 116 shown in FIG. 2A.Although there may be a benefit to including a larger or more prominentLike area (e.g., greater traffic and potential sales), in some casesthere may be a cost associated with removing or deemphasizing other pagefeatures. For example, by removing (or deemphasizing) the “FrequentlyBought Together” page feature 116, the catalog system 30 may loserevenue on convoyed sales of related items. Therefore, certainembodiments of the personalization service 40 can use the scores ofrespective page features to determine whether the benefit of adding oremphasizing the appearance of one page feature outweighs the cost ofremoving or deemphasizing another page feature. For example, thepersonalization service 40 may use the scores to rank the features to beincorporated into a page requested by a user/customer, with the topranked features (e.g., the top 10 features) being presented to theuser/customer.

At block 344, the page customization engines 42 incorporate thetop-ranked page features into a display page, which may be presented tothe user/customer via the web servers 32 using one or more pagetemplates from the repository 33.

IV. Processes for Generating Social Networking Profile-Based Messages

As described above, the electronic catalog system 30 may implementfunctionality that allows a customer to “like” an item described on adisplay page, e.g., by clicking a Like button. When a customer clicksthe Like button, information about the display page (e.g., informationabout the item, product images, product reviews, hyperlinks to thecatalog page for the item, etc.) is communicated to the socialnetworking system 50 and incorporated into the customer's memberprofile. The customer's member profile can be updated to include aconnection reflecting that the customer “liked” the item presented onthe display page. For example, display pages may include metadata thatallows various aspects of the display page to be represented in themember profiles of the social networking system 50 (e.g., descriptions,images, etc.). In some embodiments, display pages may utilize the OpenGraph protocol (available from opengraphprotocol.org) to permitintegration of the display page into the “social graph” of the socialnetworking system 50. The social networking system 50 can integrate this“like” information into member profile pages, postings on member newsfeeds, and results for searches performed on the social networkingsystem.

Other members of the social networking system 50 who view a posting ornews feed about a customer's “like” of an item can also indicate thatthey too “like” the item (e.g., by clicking a button with “like”functionality provided by the social networking system). The “likes” ofall these members can be incorporated into the social graph of thesocial networking system through updates of corresponding memberprofiles. In certain implementations, the social networking system 50can provide functionality for administrators of a display page to obtainstatistics and detailed analytics about members who liked the displaypage. The social networking system 50 may also enable display pageadministrators to communicate messages to some or all of the members whohave liked the display page.

The electronic catalog system 30 can analyze member profile informationobtained from the social networking system 50 to determine, for example,the content or timing of marketing or informational messagescommunicated from the catalog system 30 to users of the socialnetworking system 50. For example, the catalog system 30 may determinewhich social network members liked an item available from the electroniccatalog, and direct messages to some or all of those members. Themessages may be preferentially sent to social network members who arecurrent or potential customers of the catalog system 30. Certainembodiments of the catalog system 30 utilize the personalization service40 and the messaging engines 43 to communicate customized orpersonalized messages to the social network members.

A. Examples of Events That May Trigger Messaging

The electronic catalog system 30 may monitor events that are associatedwith some or all items or services offered by the catalog system 30, andafter occurrence of such event(s), may determine that a message aboutthe event(s) should be communicated to customers of the catalog system30 or members of the social networking system 50 who have indicated theylike the item.

Events associated with items (“item events”) can include, but are notlimited to: (1) new user activity on a detail page for the item, (2) aprice change for the item, (3) a new merchant offering for the item thatis different from current offerings, (4) new versions or editions of theitem, (5) new products/services from the provider of the item, and (6)new products/services related to the item. There can be multiple eventsfor any item, and some types of events may be classifiable in more thanone of the example categories (1)-(6).

Examples of (1) include new images of the item posted by customers, newreviews of the item (text reviews or video reviews), comments on reviewsor indications that the reviews were helpful, new tags (e.g., keywordsor category labels) for the item, changes in sales rank, page viewings,or the number of likes for the item (e.g., a rise in popularity of theitem). Examples of (1) can also include an indication that quantity ofthe item available from a merchant is decreasing (e.g., the item isrunning out of stock). Examples of (3) include merchant promotions forthe item (e.g., a holiday promotion or special deal). Examples of (5)include, for a book or movie, a new book by the book author or a newmovie by the movie director or movie star. Examples of (6) include newproducts that are often viewed or purchased by customers after viewingor purchasing the item. Examples of (6) also include any type of eventthat occurs for the related product (e.g., a significant price drop fora product that is often purchased with the item).

In some implementations, item events may be ranked by a precedencefactor that is indicative of the event's potential relevance tocustomers or social network members. For example, a 20% price drop foran item may be ranked higher than a 5% price drop. A video review postedfor an item may be ranked higher than a text review of the item. Anupcoming release of a new book by an author may be ranked higher thanthe release of a new edition of an old book by the author. The catalogsystem 30 may maintain a list of item events, with the list sorted byprecedence factor. As will be described below, the precedence factor(among other things) may be used to determine the content of the message(e.g., which events to include in the message), when (and via whatchannel) to send the message, and to whom the message should be sent.

B. Examples of Scoring Methods for Events and Items

As described above, the catalog system 30 can determine a list of itemevents associated with items in the electronic catalog. The catalogsystem 30 can use social networking information and customer behavioralinformation to determine a set of customers and social networkingmembers who may receive a message about the event. For example, thecatalog system 30 can generate a score that reflects the potential of amessage with information about the item event to drive traffic to adetail page for the item or to generate selections of the item (e.g.,page views, searches, purchases, downloads, rentals, likes, additions towishlists, etc.). In some embodiments, the score can be based at leastin part on factors such as, e.g., (1) the number of social networkingsystem members that have “liked” the item, (2) the number of the membersdetermined in (1) who are also customers of the catalog system, and (3)behavioral information (e.g., purchasing and viewing histories) of thecustomers determined in (2).

The catalog system 30 can obtain information about factor (1) from thesocial networking system 50 (e.g., via API calls requesting statisticalor analytical data) or by analyzing member profiles received from thesocial networking system 50. Such information can include member IDs ofthe social networking members who have “liked” the item. The catalogsystem 30 can use the customer ID-to-member ID mappings from therepository 44 to determine which of the social networking members arealso customers of the catalog system 30, e.g., to determine factor (2).For factor (3), the catalog system 30 can use behavioral data from therepository 38 to determine item selection histories and “like” historiesfor the customers. In some embodiments, the catalog system may usefactors (2) and (3) to determine additional factor(s) indicative of howoften and to what extent customers interact with the catalog system. Forexample, the system 30 may determine whether a customer is a frequent orinfrequent buyer of products similar to the item (e.g., a frequent buyerof books, if the item is a book) or whether a customer is likely towrite product reviews, comment on or like the item, etc.

The catalog system 30 may combine factors such as those described aboveto generate the score for an item event. The various factors may beweighted to reflect their relative importance in determining thepotential for traffic or sales. The score for a message about an itemevent will generally be higher if there are a relatively large number ofsocial networking members who liked the item and if a relatively highpercentage of those members are frequent buyers of products from thecatalog system. As described above, the catalog system 30 may generate aprecedence factor for different types of events that are associated withan item (e.g., a 20% price drop has more precedence than a 5% pricedrop). In some embodiments, the score is also based on the precedencefactor, with the score being higher for item events having moreprecedence or relevance to a member or customer.

The score can be used (at least partially) to select social networkingmembers (or catalog system customers) to whom to send a message. As oneexample, suppose the item event is a significant price drop for a book(e.g., “Harry Potter and the Deathly Hallows”). The analysis of thesocial networking and behavioral information may show that, for example,there are a large number of social networking members who like the worksby the author (J. K. Rowling) of this book. The analysis may also showthat, e.g., 40% of the members are also catalog system customers, and ofthose customers, 20% have already purchased the Harry Potter book. Inthis example, the score for the price drop on the Harry Potter book maybe relatively high for several reasons. First, since there are a largenumber of social networking members who like the author's works and only40% of them can be identified as current customers of the catalogsystem, there are a large number of potential customers who might beinterested in learning about a price drop for the book (e.g., the 60% ofmembers who cannot be identified as catalog system customers). A messageto those members with information about the price drop may lead tosignificant traffic to the catalog system detail page for the HarryPotter book and numerous orders for the book. Second, analysis of thecustomer behavioral data indicates that only 20% of the customers wholike the author have purchased the Harry Potter book. The catalog system30 may send a message to the remaining 80% of customers who have notpurchased the book (according to catalog system purchasing histories)with information about the price drop, because this message may alsogenerate web traffic and potential sales.

Continuing with this illustrative example, suppose there is a secondevent associated with the book, for example, a new book by an author ofbooks that are frequently bought together with the Harry Potter book(e.g., the book “The Lost Symbol” by Dan Brown). Because the Lost Symbolbook is a related product, the catalog system 30 may assign a lowerprecedence factor, and score, to the publication of The Lost Symbol thanto the price drop on the Harry Potter book. However, for the 20% ofcustomers who have already purchased the Harry Potter book, the pricedrop, in some cases, may be assigned a relatively low precedence factor,and, for these customers, the score for the publication of The LostSymbol may be higher than the score for the price drop on the HarryPotter book. Therefore, for these customers, the catalog system 30 maysend a message about the publication of the Lost Symbol rather than amessage about the price drop on the Harry Potter book. In other cases,the catalog system 30 may determine that the price drop has relevance tocustomers who have already purchased the Harry Potter book, because thesystem 30 determine that some or all of these customers frequentlypurchase books for friends in their social network. The catalog system30 may also sent a message about the publication of The Lost Symbol tomembers and customers who were earlier sent the Harry Potter message. Aswill be further described below, to increase the effectiveness of theLost Symbol message, the catalog system 30 may send the messagefollowing a delay period (e.g., 3 hours, 1 day, 1 week) after the timethe Harry Potter message was sent, so that members and customers aremore likely to view and respond to the second message (e.g., rather thanignoring or deleting it).

C. Examples of Item, Event, and Relevance Filtering

The electronic catalog of the catalog system 30 may include millions ortens of millions of items, which may make it impractical to monitor eachitem for events associated with the item. In some embodiments, thecatalog system 30 may monitor events only for a subset of all the itemsoffered in the electronic catalog. For example, the catalog system 30may determine the number of “likes” for items in the electronic catalog,and generate the subset as those items for which the number of likesexceeds a threshold (e.g., the top 10⁵ liked items). The number of likesfor items can be updated hourly, daily, weekly, etc., and the thresholdmay be item-dependent (e.g., different thresholds for books than forvideos). Additionally or alternatively to counting the number of timesan item is liked, the catalog system 30 may count the number of timesthe Like button is presented for that item, which can allow the systemto determine the ratio of Like-button selections to Like-buttonpresentations. The subset of items may include items in which this ratiois relatively large (e.g., above a threshold), because these itemseffectively engage users or customers who are more likely to interactwith the item detail page (e.g., by selecting the Like button).

A number of events may be found to be associated with any particularitem, for example, a price drop, a video review of the item on thecatalog system, a member comment about the item on the social networkingsystem, and a vendor promotion (e.g., a special holiday deal). Thecatalog system 30 may filter the item events associated with the itemsbeing monitored to determine which events may be most relevant tomembers or customer or which events may be more likely to lead to webtraffic and sales of the item. As described above, the item events maybe filtered based on one or more precedence factors for the events(e.g., a 20% price drop has more precedence than a 5% price drop). Forexample, the catalog system 30 may rank events based on the precedencefactors such that, for a social networking member or catalog systemcustomer, the highest ranked event is likely to be the most relevant forthat member or customer. As one example, a price drop event may beranked more highly for a customer who has not purchased the item thanfor a customer who has already purchased the item. Messages to themembers and customers may include, for example, some or all of the mosthighly ranked events so that the member or customer is likely to findthe message useful and informative.

As many social networking members and catalog system customers may havemany items that they like, the catalog system 30 may determine a list ofmultiple messages to send to each member or customer. For example, amember may have indicated he or she likes twenty five items, and thecatalog service 30 may have identified events for ten of those items. Ifthe catalog service 30 were to send to the member ten messages aboutthese item events, the member may find receipt of these ten messages(which could fill up the member's news feed for a period of time) moreof a distraction than helpful information about an item they like.Therefore, the catalog system 30 may filter the messages so that (1)only some of the messages are sent (e.g., the messages with the highestscores or precedence for the member), (2) combine some or all of theitem events into one message or a small number of messages, (3) staggerthe delivery of some or all of the messages over a time period selectedso that the member has a reasonable time to view and respond to eachmessage before the next message arrives, (4) send some differentmessages via different messaging channels (e.g., news feed, personalelectronic mail, text or video message to a mobile phone, e-book reader,or to a shopping application on such devices, etc.), or a combination ofthe foregoing.

As an example of (1), the catalog system 30 may send only those messagesthat have a score that exceeds a threshold. The threshold may depend onthe type of item (e.g., book or movie) or the nature of item event. Asan example of (3), items posted to a news feed generally appear in thenews feed for a time period before they are replaced by new items. Thistime period may be about three to six hours for some social networkingsystems. The catalog system 30 may stagger messages to a member so thatat any time only one message from the catalog system is likely to bepresent in the member's news feed.

D. Examples of Customization of Message Content

The personalization service 40 of the catalog system 30 can customizethe content of the message based on, e.g., the score for the message andprecedence values for various item events. Messages may includeinformation about the item event, an image of the item, a text or videoreview of the item posted by a customer or social networking member, asample of a portion of a book, music, or video clip, and so forth. Whenthere is more than one event for an item, the personalization service 40may rank the events by precedence and include information only aboutevents that have a sufficient precedence value (e.g., to reduce thelikelihood of saturating the recipient with too much information). As anexample, if there is a significant vendor promotion on the item and anew text review of the item, the system 30 may determine that the vendorpromotion is likely to be more relevant to potential customers than thetext review, and include only the vendor promotion in the message.

As described below, the catalog system 30 can use member and customerfeedback about the effectiveness of the messaging to determine contentfor future messages. For example, the feedback may indicate thatmessages that include a video review of an item are more effective atdriving traffic and sales than messages that include a text review ofthe item. The personalization service 40 can use this feedback topreferentially include video reviews in future messages.

E. Examples of member and customer feedback

The catalog system 30 may monitor the effectiveness of the messaging todetermine, for example, whether a particular message led to increasedweb traffic or increased sales. The system 30 can determine thiseffectiveness by analyzing the social networking member profileinformation (e.g., from repository 48) and the customer behavioral data(e.g., from repository 38). As one example, when a customer views anitem detail page or purchases an item from the catalog system 30, thesystem 30 can map the customer ID to a member ID to determine whether amessage about the item had been recently sent to the customer's socialnetworking account. The system 30 can also whether the item detail pagewas accessed by clicking on a link provided in the message. The system30 may also monitor whether the message engaged social networkingmembers who may have viewed the message in their news feed. For example,the system 30 may analyze the social networking member profile data todetermine the number of members who commented on or liked the message.

In some implementations, the catalog system 30 can use the results ofthis monitoring to increase the effectiveness of the messaging and leadto increased web traffic and sales. For example, precedence factors,weights, filter parameters, and so forth can be changed or adjustedbased on this customer or member “feedback” so that message scores andrankings better represent the effectiveness and engagement of themessaging. The feedback information can also be used to better selectcontent of the message, timing of the delivery of messages, and channelsfor message delivery so that members find the messages to be useful atproviding information about items they like. For example, if member andcustomer feedback indicates that a message with a new text review of anitem leads to relatively little new traffic or sales, the weights andprecedence values for text reviews can be reduced relative to other itemevents.

F. Example Method for Customized Messaging

FIG. 6 illustrates an example embodiment of a process 400 for generatingmessages based on social networking member profile data. In someimplementations of the catalog system 30, the example process 400 isperformed by the personalization service 40. FIG. 6 is intended toillustrate various aspects of the messaging process; however, in otherembodiments, the process for customizing and communicating messages maybe performed differently than shown in FIG. 6.

At block 404, the process 400 monitors events associated with itemsavailable from an electronic catalog. As described above, the catalogsystem 30 may monitor events only for a subset of all the items offeredin the electronic catalog. For example, the catalog system 30 maydetermine the number of “likes” for items in the electronic catalog, andgenerate the subset as those items for which the number of likes exceedsa threshold (e.g., the top 10⁵ liked items). The number of likes foritems can be updated hourly, daily, weekly, etc., and the threshold maybe item-dependent (e.g., different thresholds for books than forvideos).

At block 408, the process 400 determines a set of events that areassociated with a particular item. For example, there may be a pricedrop on the item, a newly uploaded video review of the item by acustomer, a special promotion by a vendor, and a price drop on a productthat is frequently purchased with the item. At block 412, the process400 filters the set of events associated with the item. For example, theprocess 400 may assign precedence values to each event and rank theevents according to their precedence. As an example, the precedence of aprice drop for a customer who has not purchased the item may berelatively high whereas the precedence of the price drop may berelatively low for a customer who has already purchased the item. Thefiltering may improve the likelihood that messages about item eventsthat are relevant and interesting to a particular member or customer arecommunicated to that customer and messages about item events havinglittle relevance are not communicated.

At block 416, the process 400 customizes the content of a message forthe item. The process 400 may include in the message information aboutonly the most relevant events identified at block 408. As describedabove, member and customer feedback information can be used to identifythe type of content that is most effective at driving traffic and itemselections, and the process 400 can incorporate the most effectivetype(s) of content into the message.

At block 420, the process 400 can use social networking information andcustomer behavioral information to generate a score that reflects thepotential of a message to drive traffic to a detail page for the item orto generate purchases of the item. The score can be based at least inpart on a combination of factors such as, e.g., (1) the number of socialnetworking system members that have “liked” the item, (2) the number ofthe members determined in (1) who are also customers of the catalogsystem, and (3) behavioral information (e.g., purchasing and viewinghistories) of the customers determined in (2). The various factors maybe weighted to reflect their relative importance in determining thepotential of the message for traffic or sales.

At block 424, the process 400 repeats the blocks 408 to 420 for otheritems that have been liked by members of the social networking system 50or customers of the catalog system 30. The result of this block is adetermination of a set of potential messages (and their associatedscores) for events associated with items like by social networkingmembers or catalog system customers. In subsequent blocks, the process400 can determine which of these potential messages to send, whichmembers or customers to sent them to, and when to send them.

At block 428, the process 400 filters the potential messages found atblock 424 by their respective scores. For example, the filtering mayrank the messages by score or remove messages with scores below athreshold. The process 400 may use social networking information orcustomer behavioral data to filter the messages for particular customers(or classes of customers). For example, the filtering may pass a messageabout a price drop for an item for customers who have not alreadypurchased the item but may reject the message about the price drop forcustomers who have already purchased the item. The filtering at block428 may improve the messaging by identifying the messages that have themost potential to drive traffic and sales to the catalog system 30.

At block 432, the process 400 communicates the message with the highestscore to a messaging channel for a member of the social networkingsystem. The messaging channel may be the news feeds of members orcustomers whom the message score indicates the item event informationmay be relevant or useful. In other cases, the messaging channel may bea personal message to the social networking channel, a personalelectronic mail message, or a message to a mobile phone, e-book reader,or to a shopping application on such devices. For example, in the caseof a message intended for the news feeds of certain social networkingmembers, the messaging engines 43 may communicate the message via APIcalls to the service interface 58 of the social networking system 50.The social networking system 50 may post the message to the news feedsof the intended recipients.

At block 436, the process filters the remaining messages (if any) todetermine their ability to effectively drive traffic and sales to thecatalog system 30 or to engage the members of the social networkingsystem 50 (e.g., to promote comments and likes). The filtering may bebased (at least partially) on the scores associated with the remainingmessages (e.g., to determine the highest ranked remaining messages), thetimes when previous messages were sent, messaging channels used forprevious messages, etc. The filtering at block 436 can be used todetermine whether to send or hold the next message or whether to sendthe message to a different messaging channel than previously sentmessages.

For example, as described above, items posted to a news feed generallyappear in the news feed for a time period before they are replaced bynew items. This time period may be about 3 to 6 hours for some socialnetworking systems. The filtering at block 436 may delay subsequentmessages to a messaging channel so that at any time only one or a fewmessages from the catalog system are likely to be present in themessaging channel. This advantageously may increase the likelihood thata member will view the message and act on the message content by, forexample, visiting or purchasing from the catalog system or liking orcommenting on the message to the member's friends. In some cases, thefiltering may determine that the next message should go to a differentmessaging channel than the previous message. For example, if a firstmessage was posted to the news feeds, the next message may becommunicated via personal e-mail to members or customers, and so forth.By selectively distributing messages among different messaging channels,the catalog system 30 may able to communicate a wide range ofinformation that is helpful and effective without saturating a member'stolerance for receiving messages on a single messaging channel.

The process 400 continues at block 440 where the remaining messages areprocessed. For example, after the filtering at block 436, the nexthighest ranked message is communicated to members or customers. Thisprocess continues until there are no remaining messages that pass thefiltering process. In some embodiments of the process 400, the blocks412 to 440 are repeated for other social networking system to whichcatalog system customers have linked their catalog system accounts.Accordingly, personalized messages about item events can be communicatedto any of a number of social networking systems.

Although certain processes have been described above in the context ofproducts represented in a catalog, the processes shown in FIGS. 5 and 6may be used to generate social networking customized display pages andmessages for items and services such as, e.g., authors, artists, blogs,web sites, news articles, news feeds, restaurants, clubs, andorganizations. Also, the system and methods disclosed herein can use anysuitable information upon which to base customization or messagingincluding, but not limited to, social networking data (from one or moresocial networking systems), customer behavioral data derived from userinteraction with the catalog system, or any other type of informationabout, e.g., habits, preferences, trends, or potential buying decisionsof users or customers (e.g., advertising or marketing data, survey data,etc.).

V. Conclusion

Although described in the context of an electronic catalog system thatretrieves profile data from a social networking system, the features andprocesses described above can also be implemented in a variety of otherenvironments. As one example, some or all of the disclosed features canbe implemented by the social networking system itself. As anotherexample, the disclosed features could be implemented in the context of apersonalized news site, in which case the retrieved social networkprofile data may be used to personalize delivery of content (e.g., newsstories, news feeds, blog entries, etc.) to users of the news site ormessages (e.g., marketing or informational messages) to users of thesocial networking.

Each of the processes, methods, and algorithms described in thepreceding sections may be embodied in, and fully or partially automatedby, code modules executed by one or more computers, computer processors,or machines configured to execute computer instructions. The codemodules may be stored on any type of non-transitory computer-readablemedium or computer storage device, such as hard drives, solid statememory, optical disc, and/or the like. The systems and modules may alsobe transmitted as generated data signals (e.g., as part of a carrierwave or other analog or digital propagated signal) on a variety ofcomputer-readable transmission mediums, including wireless-based andwired/cable-based mediums, and may take a variety of forms (e.g., aspart of a single or multiplexed analog signal, or as multiple discretedigital packets or frames). The processes and algorithms may beimplemented partially or wholly in application-specific circuitry. Theresults of the disclosed processes and process steps may be stored,persistently or otherwise, in any type of non-transitory computerstorage such as, e.g., volatile or non-volatile storage.

The various features and processes described above may be usedindependently of one another, or may be combined in various ways. Allpossible combinations and subcombinations are intended to fall withinthe scope of this disclosure. In addition, certain method or processblocks may be omitted in some implementations. The methods and processesdescribed herein are also not limited to any particular sequence, andthe blocks or states relating thereto can be performed in othersequences that are appropriate. For example, described blocks or statesmay be performed in an order other than that specifically disclosed, ormultiple blocks or states may be combined in a single block or state.The example blocks or states may be performed in serial, in parallel, orin some other manner. Blocks or states may be added to or removed fromthe disclosed example embodiments. The example systems and componentsdescribed herein may be configured differently than described. Forexample, elements may be added to, removed from, or rearranged comparedto the disclosed example embodiments.

Conditional language used herein, such as, among others, “can,” “could,”“might,” “may,” “e.g.,” and the like, unless specifically statedotherwise, or otherwise understood within the context as used, isgenerally intended to convey that certain embodiments include, whileother embodiments do not include, certain features, elements and/orsteps. Thus, such conditional language is not generally intended toimply that features, elements and/or steps are in any way required forone or more embodiments or that one or more embodiments necessarilyinclude logic for deciding, with or without author input or prompting,whether these features, elements and/or steps are included or are to beperformed in any particular embodiment. The terms “comprising,”“including,” “having,” and the like are synonymous and are usedinclusively, in an open-ended fashion, and do not exclude additionalelements, features, acts, operations, and so forth. Also, the term “or”is used in its inclusive sense (and not in its exclusive sense) so thatwhen used, for example, to connect a list of elements, the term “or”means one, some, or all of the elements in the list.

While certain example embodiments have been described, these embodimentshave been presented by way of example only, and are not intended tolimit the scope of the inventions disclosed herein. Thus, nothing in theforegoing description is intended to imply that any particular feature,characteristic, step, module, or block is necessary or indispensable.Indeed, the novel methods and systems described herein may be embodiedin a variety of other forms; furthermore, various omissions,substitutions and changes in the form of the methods and systemsdescribed herein may be made without departing from the spirit of theinventions disclosed herein. The accompanying claims and theirequivalents are intended to cover such forms or modifications as wouldfall within the scope and spirit of certain of the inventions disclosedherein.

1.-20. (canceled)
 21. A computer-implemented method of providing apersonalized display page to present to a user of an electronic catalogsystem, the method comprising: confirming that the user of theelectronic catalog system has authorized access by the electroniccatalog system to a social networking system; retrieving, from thesocial networking system, social networking profile information thatidentifies a plurality of social networking contacts of the user of theelectronic catalog system; determining, based at least in part on theretrieved social networking information, a social networking usage forthe user by at least calculating a number of times the user has createda comment or a post on the social networking system; assigning at leastone of a default position or a default size to a personalized feature tobe displayed on a plurality of display pages, wherein the personalizedfeature is configured to share an opinion of the user regarding an itemadvertised on a display page from the plurality of display pages with aplurality of social networking contacts of the user when thepersonalized feature is selected by the user; based at least in part onthe determined social networking usage, changing at least one of thedefault position to a new position or the default size to a new size;outputting for presentation to the user a first display page for a firstitem, wherein the first display page includes the personalized featureaccording to the at least one of the new position or the new appearance;outputting for presentation to the user a second display page for asecond item that is different from the first item, wherein the seconddisplay page includes the personalized feature according to the at leastone of the new position or the new appearance, wherein the method isperformed in its entirety by a computer system comprising one or moremachines.
 22. The method of claim 21, wherein changing the at least oneof the default position to a new position or the default size to a newsize comprises selecting content or appearance of the personalizedfeature based at least in part on whether the social networking usage isrepresentative of light, moderate, or heavy usage of the socialnetworking system by the user.
 23. The method of claim 21, wherein thepersonalized feature is configured to allow the user to input apreference or rank for, or a comment about, the first item described onthe first display page or the second item described on the seconddisplay page.
 24. The method of claim 21, wherein the personalizedfeature includes at least one of (1) a recommendation of an item for theuser or for a social networking contact of the user or (2) informationabout items that are popular among the plurality of social networkingcontacts of the user.
 25. The method of claim 21, further comprisingdetermining the plurality of social networking contacts of the user fromthe social networking profile information.
 26. The method of claim 21,further comprising: analyzing the social networking usage of users ofthe electronic catalog system; and for users with sufficiently highsocial networking usage, providing an incentive to these users to post,to the electronic catalog system or to the social networking system,information about items advertised on the electronic catalog system. 27.A system for providing a personalized display page to present to a userof an electronic catalog system, the system comprising: non-transitorydata storage configured to store social networking profile data ofsocial networking contacts on a social networking system of the users ofthe electronic catalog system; and a physical computer system programmedto use data from the non-transitory data storage to: determine a socialnetworking usage for the user of the electronic catalog system by atleast calculating a number of times the user has created a comment or apost on the social networking system; assign at least one of a defaultposition or a default size to a personalized feature to be displayed ona plurality of display pages, wherein the personalized feature isconfigured to share an opinion of the user regarding an item advertisedon a display page from the plurality of display pages with a pluralityof social networking contacts of the user when the personalized featureis selected by the user; based at least in part on the determined socialnetworking usage, change at least one of the default position to a newposition or the default size to a new size; output for presentation tothe user a first display page for a first item, wherein the firstdisplay page includes the personalized feature according to the at leastone of the new position or the new appearance; and output forpresentation to the user a second display page for a second item that isdifferent from the first item, wherein the second display page includesthe personalized feature according to the at least one of the newposition or the new appearance.
 28. The system of claim 27, wherein thepersonalized feature is configured to allow the user to input apreference or rank for, or a comment about, the first item described onthe first display page or the second item described on the seconddisplay page.
 29. The system of claim 27, wherein the personalizedfeature includes at least one of (1) a recommendation of an item for theuser or for a social networking contact of the user or (2) informationabout items that are popular among the plurality of social networkingcontacts of the user.
 30. The system of claim 27, wherein the computersystem is programmed to change the at least one of the default positionto a new position or the default size to a new size by selecting contentor appearance of the personalized feature based at least in part onwhether the social networking usage is representative of light,moderate, or heavy usage of the social networking system by the user.31. The system of claim 27, wherein the computer system is furtherprogrammed to: analyze the social networking usage of users of theelectronic catalog system; and for users with sufficiently high socialnetworking usage, provide an incentive to these users to post, to theelectronic catalog system or to the social networking system,information about items advertised on the electronic catalog system. 32.The system of claim 27, wherein the computer system is configured todetermine the social networking usage based at least in part on some orall of the following: (1) an amount of recent activity by the user onthe social networking system, (2) a number of social networking contactsof the user on the social networking system, or (3) an amount ofinteraction on the social networking system between the user and thesocial networking contacts.
 33. The system of claim 27, wherein thenon-transitory data storage is additionally configured to store accountassociation data reflecting a link between a user's account on theelectronic catalog system and the user's account on the socialnetworking system and behavioral data for users of an electronic catalogsystem, the behavioral data reflective of item selection actions by theusers of the catalog system, and the physical computer system isprogrammed to: determine the social networking usage based at least inpart on some or all of the following: (1) a number of the socialnetworking contacts of the user who are also users of the electroniccatalog system, (2) a number of social networking contacts of the userwho cannot be identified as users of the electronic catalog system, or(3) behavioral data of proxies for the social networking contacts of theuser who cannot be identified as users of the electronic catalog system.34. The system of claim 33, wherein the non-transitory data storage isadditionally configured to store user account data for users of theelectronic catalog system, and the physical computer system is furtherprogrammed to: analyze the social networking profile data and the useraccount data; and update the account association data based at least inpart on the analysis.
 35. The system of claim 27, wherein the computersystem is part of the electronic catalog system, and the electroniccatalog system is separate from the social networking system, thecomputer system further programmed to: retrieve account association datareflecting a link between the user's account on the electronic catalogsystem and the user's account on the social networking system; confirmthat the user has authorized access by the electronic catalog system tothe social networking system; and establish a link between an account ofthe user with the electronic catalog system and an account of the userwith the social networking system.
 36. The system of claim 35, whereinthe personalized feature is configured to allow the user to provideinput to the electronic catalog system, and the computer system isfurther programmed to communicate information about the user input tothe social networking system.
 37. Non-transitory computer storage havingstored thereon instructions that, when executed by a computer systemhaving computer storage, cause the computer system to perform a methodproviding a personalized display page to present to a user of anelectronic catalog system, the method comprising: retrieving socialnetworking profile data of social networking contacts on a socialnetworking system of users of the electronic catalog system; determininga social networking usage for the user of the electronic catalog systemby at least calculating a number of times the user has created a commentor a post on the social networking system; assigning at least one of adefault position or a default size to a personalized feature to bedisplayed on a plurality of display pages, wherein the personalizedfeature is configured to share an opinion of the user regarding an itemadvertised on a display page from the plurality of display pages with aplurality of social networking contacts of the user when thepersonalized feature is selected by the user; based at least in part onthe determined social networking usage, changing at least one of thedefault position to a new position or the default size to a new size;generating information for a first display page for a first item,wherein the first display page includes the personalized featureaccording to the at least one of the new position or the new appearance;and generating information for a second display page for a second itemthat is different from the first item, wherein the second display pageincludes the personalized feature according to the at least one of thenew position or the new appearance.
 38. The non-transitory computerstorage of claim 37, wherein the personalized feature is configured toallow the user to input a preference or rank for, or a comment about,the first item described on the first display page or the second itemdescribed on the second display page.
 39. The non-transitory computerstorage of claim 37, wherein the personalized feature includes at leastone of (1) a recommendation of an item for the user or for a socialnetworking contact of the user or (2) information about items that arepopular among the plurality of social networking contacts of the user.40. The non-transitory computer storage of claim 37, wherein thecomputer system is programmed to change the at least one of the defaultposition to a new position or the default size to a new size byselecting content or appearance of the personalized feature based atleast in part on whether the social networking usage is representativeof light, moderate, or heavy usage of the social networking system bythe user.